package fr.bugtracker.bean.compte;

import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import fr.bugtracker.bean.AbstractBean;
import fr.bugtracker.commun.dto.DtoInformationCompte;
import fr.bugtracker.commun.outils.UtilsAuthentication;
import fr.bugtracker.service.compte.SrvAfficherCompte;

/**
 * Bean pour l'affichage des informations du compte utilisateur
 * @author Laurent
 * @version 0.1
 */
@ManagedBean
@ViewScoped
public class BeanAfficherCompte extends AbstractBean {

	/**
	 * service ejb
	 */
	@EJB
	private SrvAfficherCompte srvAfficherCompte;
	/**
	 * les informations du compte utilisateur
	 */
	private DtoInformationCompte informationCompte;

	/**
	 * Constructeur de la classe <code>BeanAfficherCompte</code>.
	 */
	public BeanAfficherCompte() {
	}

	/**
	 * Méthode d'initialisation du bean
	 */
	/**
	 * @see fr.bugtracker.bean.AbstractBean#initialisation()
	 */
	@Override
	public void initialisation() {
		informationCompte = srvAfficherCompte.getInformationCompteParIdUtilisateur(UtilsAuthentication.getUtilisateurSession().getId());
	}

	/**
	 * <p><b>Accès en lecture à l'attribut informationCompte.</b></p>
	 * @return Retourne l'attribut informationCompte sous forme de <code>DtoInformationCompte</code>.
	 */
	public DtoInformationCompte getInformationCompte() {
		return this.informationCompte;
	}

	/**
	 * <p><b>Accès en écriture à l'attribut informationCompte.</b></p>
	 * @param informationCompte L'attribut informationCompte à modifier.
	 */
	public void setInformationCompte(DtoInformationCompte informationCompte) {
		this.informationCompte = informationCompte;
	}

}
